package com.annotation;

import java.lang.annotation.*;

/**
 * @author 代廷波
 * @className: TestAnnotation
 * @description:
 * @create 2018/11/12 0012-16:35
 **/
@Target({ElementType.METHOD,ElementType.TYPE})//注解的作用域
@Retention(RetentionPolicy.RUNTIME)//生命周期
@Inherited //允许继承
@Documented //生成 javadoc文件
public @interface TestAnnotation {

    /**
     * 1.成员以无参无异常声明
     * 2.成员类型受限,包括普通的类型(int long string bool)和class,Annotation,Enumeration
     * 3.如果注解只有一个成员,则成员名必须为value(),在使用时可以忽略成员和赋值号(=)
     */

    String desc();
    String author();
    int age() default 18;//指定默认值
}
